home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / asmexam.arc / ASCADJ.ASM < prev    next >
Assembly Source File  |  1984-08-09  |  807b  |  46 lines

  1.     PAGE 55,132
  2. CODE    SEGMENT  PARA
  3.     ASSUME CS:CODE,DS:CODE
  4.     ORG 100H
  5.  
  6. ; ------ ADD TWO PACKED BCD NUMBERS -------------
  7.  
  8.     MOV AL,15H
  9.     ADD AL,09H  ;  15 + 9 = 24     BCD
  10.     DAA         ; DECIMAL ADJUST ADDITION
  11.  
  12.  
  13. ; -------- ADD TWO 4 DIGIT PACKED BCD  NUMBERS --------
  14. ;       1098 + 1005 = 2103
  15.  
  16.     MOV AL,98H
  17.     ADD AL,05H     ;AL = AD
  18.     DAA            ;AL=03
  19.     MOV BL,AL
  20.     MOV AL,10H
  21.     ADC AL,10H     ;AL = 21H
  22.     DAA
  23.     MOV BH,AL      ;BX = 2103 BCD
  24.  
  25. ;------- SUBTRACT TWO BCD NUMBERS
  26.  
  27.     MOV AL,53H
  28.     SUB AL,49H  ; AL= 0A
  29.     DAS         ; DECIMAL ADJUST SUBTRACTION AL= 04
  30.  
  31.  
  32.  
  33.  
  34. ; SHOW USE OF AAA ON UNPACKED BCD NUMBER    (ZN)
  35.  
  36.     MOV AL,31H
  37.     ADD AL,39H
  38.     AAA         ; ASCII ADJUST ADDITION
  39.  
  40.     MOV AL,31H
  41.     SUB AL,39H
  42.     AAS         ; ASCII ADJUST FOR SUBTRACTION
  43. CODE    ENDS
  44.     END
  45.  
  46.